The completed program is given below.
Here is the complete program with the blanks filled in as suggested.
class StringTester
{
public static void main ( String[] args )
{
String str1; // str1 is a reference to a String object.
String str2; // str2 is a reference to a second String object.
int len1, len2 ; // the length of str1 and the length of str2
str1 = new String( "Green eggs") ; // create the first String
str2 = new String( " and ham.") ; // create the second String
len1 = str1.length(); // get the length of the first string
len2 = str2 . length(); // get the length of the second string
System.out.println("The combined length of both strings is " +
(len1 + len2) + " characters" );
}
}
This is a "wordy" version of the program.
An object can be created in a variable declaration.
For example the following creates a String object
containing the designated characters:
String str1 = new String("Green eggs");
There is an even shorter way,
that works only for String objects:
String str1 = "Green eggs";
The above statement ensures that str1
refers to an object containing the designated characters.
However, if a "Green eggs" object already exists,
no new object is created, but str1 is
made to refer to the already existing object.
Which of the following are correct?
String ant = "It was a dark and stormy night." String bat = new( "A shot rang out in the dark." ); int cat = "123"; double dog = 45.69;